//index.js
//获取应用实例
const app = getApp()

Page({
  data: {
    userInfo: {},
    link: '',
    isReload: true, // 报错时是否重新加载
    isViewError: false, // webview 加载是否出错
    isShow: true, // 是否显示页面
    isViewLoad: false, // 页面是否加载成功webview
    isShowCount: 0 // 显示事件触发的次数
  },
  linlView: function () {
    wx.navigateTo({
      url: '../link/link'
    })
  },
  onShow: function () {
    // 页面显示
    var self = this
    if (!self.data.isShow) {
      self.setData({
        isShow: true,
        isReload: true
      })
    }
    if (self.data.isShowCount > 0 && !self.data.isViewLoad) {
      // 当显示次数计数大于 0 ，同时上次页面没有加载成功
      self.setData({
        isShow: false
      })
      setTimeout(function () {
        self.setData({
          isShow: true
        })
      }, 400)
    }
    // 增加显示次数计数
    self.setData({
      isShowCount: self.data.isShowCount + 1
    })
  },
  onHide: function () {
    // 页面隐藏
    var self = this
    if (self.data.isViewError) {
      // 当页面报错是重新加载页面
      self.setData({
        isShow: false
      })
    }
  },
  webLoad: function () {
    // webview 加载成功
    var self = this
    self.setData({
      isViewError: false,
      isViewLoad: true
    })
  },
  webError: function (res) {
    // webview 加载错误时触发
    var self = this
    if (self.data.isReload) {
      self.setData({
        isShow: false,
        isReload: false,
        isViewError: true
      })
      setTimeout(function () {
        self.setData({
          isShow: true
        })
      }, 200)
    } else {
      self.setData({
        isViewError: true,
        isShow: true
      })
    }
    // 上报日志
    var errorLink =  ''
    if (res && res.detail && res.detail.src) {
      errorLink = res.detail.src || ''
    }
    app.uploadLog('error_info', {
      type: 'webview加载错误',
      info: errorLink
    })
  },
  onLoad: function (query) {
    // 加载成功
    // 后续可能会添加 后缀 #wechat_redirec
    const self = this
    let _link = 'https://wx.dudubashi.com/index.php/feonew/shuttle/home'
    if (query.link) {
      _link = decodeURIComponent(query.link)
      if (_link.indexOf('noLine') != -1) {
        _link = 'https://wx.dudubashi.com/index.php/feonew/shuttle/home'
      } else {
        // 增加对于链接的授权
        // _link = 'https://wx.dudubashi.com/index.php/users/passport/auto_login?back_url=' + _link
      }
    } else if (query.enterprise_id) {
      // 跳转企业授权链接
      _link = 'https://wx.dudubashi.com/index.php/users/passport/auto_login?enterprise_id=' + query.enterprise_id
    }
    self.setData({
      link: _link
    })
    // 上报加载页面参数
    app.uploadLog('log_info', {
      type: 'webview加载参数',
      info: _link
    })
  },
  onShareAppMessage(options) {
    const _link = '/pages/index/index?link=' + encodeURIComponent(options.webViewUrl || '')
    return {
      path: _link,
      imageUrl: 'https://oss.dudubashi.com/images/self_upload_images/min_share_img.png'
    }
  }
})
